/*************************************************************************
	> File Name: JuzEvent.h
	> Author: 
	> Mail: 
	> Created Time: 2017年05月24日 星期三 22时54分56秒
 ************************************************************************/

#ifndef _JUZEVENT_H
#define _JUZEVENT_H
#include "../JuzBase.h"
#include <string>
using namespace std;

enum _JUZEVENTTYPE
{
	_general = 0,//普通事件
	_NotInterruptDelete,//不可中断删除
};

class JuzEvent :public JuzBase
{
public:
    JuzEvent(const char* name);
    virtual ~JuzEvent();

    virtual void setCancel(bool isYes);//设置是否取消
    virtual void setBreakoff(bool isYes);//设置中断
    virtual void setDisable(bool isYes);//让发送的事件来  注销,避免内存泄露


    virtual bool getDisable();
    virtual bool getCancel();
    virtual bool getBreakoff();
    virtual string getEventName();

private:
    bool mCancel;
    bool mBreakoff;
    bool mDisable;

    _JUZEVENTTYPE mType = _general;
public:
    char mEventName[127];

public:

	_JUZEVENTTYPE getType() const {
		return mType;
	}

	void setType(_JUZEVENTTYPE type = _general) {
		mType = type;
	}



};

#endif
